package com.iris.live.services.data.models;

import com.fasterxml.jackson.annotation.JsonProperty;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by xin on 2016/7/13.
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "报价图片表", schema = "sg_lsh", catalog = "")
@IdClass(报价图片表ModelPK.class)
public class 报价图片表Model {
    private Integer 报价编号;
    private String 名称;
    private String 路径;
    private Timestamp 更新时间;

    @Id
    @Column(name = "报价编号")
    @JsonProperty("报价编号")
    public Integer get报价编号() {
        return 报价编号;
    }

    public void set报价编号(Integer 报价编号) {
        this.报价编号 = 报价编号;
    }

    @Id
    @Column(name = "名称")
    @JsonProperty("名称")
    public String get名称() {
        return 名称;
    }

    public void set名称(String 名称) {
        this.名称 = 名称;
    }

    @Basic
    @Column(name = "路径")
    @JsonProperty("路径")
    public String get路径() {
        return 路径;
    }

    public void set路径(String 路径) {
        this.路径 = 路径;
    }

    @Basic
    @Column(name = "更新时间")
    @JsonProperty("更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @PrePersist
    @PreUpdate
    public void onPreUpdate() {
        this.set更新时间(new Timestamp(System.currentTimeMillis()));
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        报价图片表Model that = (报价图片表Model) o;

        if (报价编号 != null ? !报价编号.equals(that.报价编号) : that.报价编号 != null) return false;
        if (名称 != null ? !名称.equals(that.名称) : that.名称 != null) return false;
        if (路径 != null ? !路径.equals(that.路径) : that.路径 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = (报价编号 != null ? 报价编号.hashCode() : 0);
        result = 31 * result + (名称 != null ? 名称.hashCode() : 0);
        result = 31 * result + (路径 != null ? 路径.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
